'\" te
.\"  Copyright (c) 1990, 1995 by Mortice Kern Systems Inc.  All Rights Reserved  Portions Copyright (c) 1996, Sun Microsystems, Inc.  All Rights Reserved
.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
.TH DOUPDATE 3XCURSES "Jun 5, 2002"
.SH NAME
doupdate, refresh, wnoutrefresh, wrefresh \- refresh windows and lines
.SH SYNOPSIS
.LP
.nf
\fBcc\fR [ \fIflag\fR... ] \fIfile\fR... \fB-I\fR /usr/xpg4/include \fB -L \fR /usr/xpg4/lib \e
\fB -R \fR /usr/xpg4/lib \fB -lcurses \fR [ \fIlibrary\fR... ]

\fBc89\fR [ \fIflag\fR... ] \fIfile\fR... \fB-lcurses\fR [ \fIlibrary\fR... ]

#include <curses.h>

\fBint\fR \fBdoupdate\fR(\fBvoid\fR);
.fi

.LP
.nf
\fBint\fR \fBrefresh\fR(\fBvoid\fR);
.fi

.LP
.nf
\fBint\fR \fBwnoutrefresh\fR(\fBWINDOW *\fR\fIwin\fR);
.fi

.LP
.nf
\fBint\fR \fBwrefresh\fR(\fBWINDOW *\fR\fIwin\fR);
.fi

.SH DESCRIPTION
.sp
.LP
The \fBrefresh()\fR and \fBwrefresh()\fR functions copy \fBstdscr\fR and
\fIwin\fR, respectively, to the terminal screen. These functions call the
\fBwnoutrefresh()\fR function to copy the specified  window to \fBcurscr\fR and
the \fBdoupdate()\fR function to do the  actual update.  The physical cursor is
mapped to the same position as the logical cursor of  the last window to update
\fBcurscr\fR unless \fBleaveok\fR(3XCURSES) is enabled  (in which case, the
cursor is placed in a position that X/Open Curses finds  convenient).
.sp
.LP
When outputting several windows at once, it is often more efficient to call the
\fBwnoutrefresh()\fR and \fBdoupdate()\fR functions directly.  A call to
\fBwnoutrefresh()\fR for each window, followed by only one call  to
\fBdoupdate()\fR to update the screen, results in one burst of output,  fewer
characters sent, and less CPU time used.
.sp
.LP
If the \fIwin\fR parameter to \fBwrefresh()\fR is the global variable
\fBcurscr\fR, the screen is immediately cleared and repainted from scratch.
.sp
.LP
For details on how the \fBwnoutrefresh()\fR function handles overlapping
windows with broad glyphs, see the \fBOverlapping Windows\fR section of the
\fBcurses\fR(3XCURSES) reference manual page.
.SH PARAMETERS
.sp
.ne 2
.na
\fB\fIwin\fR\fR
.ad
.RS 7n
Is a pointer to the window in which to refresh.
.RE

.SH RETURN VALUES
.sp
.LP
On success, these functions return \fBOK\fR. Otherwise, they return \fBERR\fR.
.SH ERRORS
.sp
.LP
None.
.SH ATTRIBUTES
.sp
.LP
See \fBattributes\fR(7) for descriptions of the following attributes:
.sp

.sp
.TS
box;
c | c
l | l .
ATTRIBUTE TYPE	ATTRIBUTE VALUE
_
Interface Stability	Standard
_
MT-Level	Unsafe
.TE

.SH SEE ALSO
.sp
.LP
.BR clearok (3XCURSES),
.BR curses (3XCURSES),
.BR libcurses (3XCURSES),
.BR prefresh (3XCURSES),
.BR redrawwin (3XCURSES),
.BR attributes (7),
.BR standards (7)
